﻿using System.Linq;
using Common;
using Entidades.jSON;

namespace Web.Helpers
{
    public class BusinessRulesHelper
    {
        public static class Guion
        {
            public static bool CanSave(Entidades.Guion guion, UsuarioInfo usuario)
            {
                var tiposUsuario = new []
                {
                    WellKnownKeys.Entities.TiposUsuario.ADMINISTRADOR.Id,
                    WellKnownKeys.Entities.TiposUsuario.PRODUCCION.Id
                };

                if (tiposUsuario.Contains((usuario.IdTipo)))
                {
                    return true;
                }

                if ( usuario.IdTipo == WellKnownKeys.Entities.TiposUsuario.TRADUCTOR.Id )
                {
                    if (guion.Traductor.Id == usuario.Id && guion.Estado.Id == WellKnownKeys.Entities.EstadosGuion.GENERADO.Id)
                    {
                        return true;
                    }
                }

                return false;
            }

            public static bool CanDelete(Entidades.Guion guion, UsuarioInfo usuario)
            {
                var tiposUsuario = new []
                {
                    WellKnownKeys.Entities.TiposUsuario.ADMINISTRADOR.Id,
                    WellKnownKeys.Entities.TiposUsuario.PRODUCCION.Id
                };

                if (tiposUsuario.Contains((usuario.IdTipo)))
                {
                    return true;
                }

                if ( usuario.IdTipo == WellKnownKeys.Entities.TiposUsuario.TRADUCTOR.Id )
                {
                    if (guion.Traductor.Id == usuario.Id && guion.Estado.Id == WellKnownKeys.Entities.EstadosGuion.GENERADO.Id)
                    {
                        return true;
                    }
                }

                return false;
            }

        }
    }
}